Multi-system event response calculator and resource allocator

ABSTRACT

Embodiments analyze historical events to calculate the impact of multi-system events and, in response, allocate resources. Embodiments determine a multi-system event is occurring based on historical multi-system event data; correlate the multi-system event with one or more predicted resource allocation results of the multi-system event based on historical multi-system event data; and in response to the correlation, initiate mitigation of the one or more predicted resource allocation results, including re-allocation of at least one affected resource to a new system. Some also determine current consumption of a resource utilized by a service; determine current processing throughput; calculate a relationship between consumption of the resource and processing throughput; determine the service is impacted by the multi-system event; calculate expected processing throughput in response to the multi-system event; and calculate expected consumption of the resource based on the calculated expected processing throughput and the calculated relationship.

CROSS-REFERENCE TO RELATED APPLICATION

This application is a continuation of and claims priority from allowed,co-pending U.S. patent application Ser. No. 15/660,381 filed on Jul. 26,2017 and entitled “Multi-System Event Response Calculator and ResourceAllocator”.

FIELD

In general, embodiments of the invention relate to methods, systems,apparatus and computer program products for analyzing historical eventsto calculate impact of multi-system event impact and, in response,allocate resources.

BACKGROUND

Oftentimes, a potential problem such as a fragmenting entity may causemulti-system disruption to resource distribution. Therefore, a needexists for a system that can identify potential problems so that thesystem may communicate and/or implement recommendations to/foradministrators.

BRIEF SUMMARY

The following presents a simplified summary of several embodiments ofthe invention in order to provide a basic understanding of suchembodiments. This summary is not an extensive overview of allcontemplated embodiments of the invention, and is intended to neitheridentify key or critical elements of all embodiments, nor delineate thescope of any or all embodiments. Its purpose is to present some conceptsof one or more embodiments in a simplified form as a prelude to the moredetailed description that is presented later.

Embodiments of the invention provide systems, computer program products,methods and apparatuses for analyzing historical events to calculateimpact of multi-system event impact and, in response, allocateresources. Some embodiments provide a system including a computerapparatus including a processor, a memory device, and a communicationdevice; and a software module stored in the memory, comprisingcomputer-readable instructions that when executed by the processor causethe processor to determine a multi-system event is occurring based onhistorical multi-system event data; correlate the multi-system eventwith one or more predicted resource allocation results of themulti-system event based on historical multi-system event data; and inresponse to the correlation, initiate mitigation of the one or morepredicted resource allocation results, including re-allocation of atleast one affected resource to a new system.

In some embodiments, the computer-readable instructions when executed bythe processor further cause the processor to determine currentconsumption of a resource utilized by a service; determine currentprocessing throughput; calculate a relationship between consumption ofthe resource and processing throughput; determine the service isimpacted by the multi-system event; calculate expected processingthroughput in response to the multi-system event; and calculate expectedconsumption of the resource based on the calculated expected processingthroughput and the calculated relationship. In some such embodiments,the computer-readable instructions when executed by the processorfurther cause the processor to initiate re-allocation of resources toaccount for the calculated expected consumption of the resource. Inother such embodiments, the computer-readable instructions when executedby the processor further cause the processor to initiate presentation ofthe calculated expected consumption of the resource to an administrator;and receive instructions from the administrator regarding desiredmitigation.

In yet other such embodiments, the computer-readable instructions whenexecuted by the processor further cause the processor to initiatepresentation of the calculated expected consumption of the resource toan administrator; calculate a re-allocation of resources to account forthe calculated expected consumption of the resource; and initiatepresentation of the calculated re-allocation of resources foradministration approval. In some of these embodiments, thecomputer-readable instructions when executed by the processor furthercause the processor to receive administrator approval for implementingthe re-allocation of resources; and in response, initiate re-allocationof resources.

In some embodiments, the at least one allocated resource comprises anelectronic processing resource or an electronic memory resource.

According to some embodiments of the invention, a computer programproduct includes at least one non-transitory computer-readable mediumhaving computer-readable program code portions embodied therein, and thecomputer-readable program code portions comprise an executable portionconfigured to determine a multi-system event is occurring based onhistorical multi-system event data; an executable portion configured tocorrelate the multi-system event with one or more predicted resourceallocation results of the multi-system event based on historicalmulti-system event data; and an executable portion configured to, inresponse to the correlation, initiate mitigation of the one or morepredicted resource allocation results, including re-allocation of atleast one affected resource to a new system.

In some embodiments, the computer-readable program code portions furthercomprise an executable portion configured to determine currentconsumption of a resource utilized by a service; an executable portionconfigured to determine current processing throughput; an executableportion configured to calculate a relationship between consumption ofthe resource and processing throughput; an executable portion configuredto determine the service is impacted by the multi-system event; anexecutable portion configured to calculate expected processingthroughput in response to the multi-system event; and an executableportion configured to calculate expected consumption of the resourcebased on the calculated expected processing throughput and thecalculated relationship. In some such embodiments, the computer-readableprogram code portions further comprise an executable portion configuredto initiate re-allocation of resources to account for the calculatedexpected consumption of the resource. In other such embodiments, thecomputer-readable program code portions further comprise an executableportion configured to initiate presentation of the calculated expectedconsumption of the resource to an administrator; and an executableportion configured to receive instructions from the administratorregarding desired mitigation.

In yet other such embodiments, the computer-readable program codeportions further comprise an executable portion configured to initiatepresentation of the calculated expected consumption of the resource toan administrator; an executable portion configured to calculate are-allocation of resources to account for the calculated expectedconsumption of the resource; and an executable portion configured toinitiate presentation of the calculated re-allocation of resources foradministration approval. In some of these embodiments, thecomputer-readable program code portions further comprise an executableportion configured to receive administrator approval for implementingthe re-allocation of resources; and an executable portion configured to,in response, initiate re-allocation of resources.

In some embodiments, the at least one allocated resource comprises anelectronic processing resource or an electronic memory resource.

According to some embodiments of the invention, a method comprisesdetermining, using a processing device, a multi-system event isoccurring based on historical multi-system event data; correlating,using the processing device, the multi-system event with one or morepredicted resource allocation results of the multi-system event based onhistorical multi-system event data; and in response to the correlation,initiating, using the processing device, mitigation of the one or morepredicted resource allocation results, including re-allocation of atleast one affected resource to a new system.

In some embodiments, the method also includes determining, using theprocessing device, current consumption of a resource utilized by aservice; determining, using the processing device, current processingthroughput; calculating, using the processing device, a relationshipbetween consumption of the resource and processing throughput;determining, using the processing device, the service is impacted by themulti-system event; calculating, using the processing device, expectedprocessing throughput in response to the multi-system event; andcalculating, using the processing device, expected consumption of theresource based on the calculated expected processing throughput and thecalculated relationship. In some such embodiments, the method includesinitiating, using the processing device, re-allocation of resources toaccount for the calculated expected consumption of the resource. Inother such embodiments, the method includes initiating, using theprocessing device, presentation of the calculated expected consumptionof the resource to an administrator; and receiving, using the processingdevice, instructions from the administrator regarding desiredmitigation.

In yet other embodiments of the invention, the method includesinitiating, using the processing device, presentation of the calculatedexpected consumption of the resource to an administrator; calculating,using the processing device, a re-allocation of resources to account forthe calculated expected consumption of the resource; and initiating,using the processing device, presentation of the calculatedre-allocation of resources for administration approval. In some suchembodiments, the method also includes receiving, using the processingdevice, administrator approval for implementing the re-allocation ofresources; and in response, initiating, using the processing device,re-allocation of resources.

The features, functions, and advantages that have been discussed may beachieved independently in various embodiments of the present inventionor may be combined with yet other embodiments, further details of whichcan be seen with reference to the following description and drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

Having thus described embodiments of the invention in general terms,reference will now be made the accompanying drawings, wherein:

FIG. 1 provides a block diagram illustrating technical components of asystem for analyzing historical events to calculate impact ofmulti-system event impact and, in response, allocate resources, inaccordance with embodiments of the present invention;

FIG. 2 provides a flow diagram illustrating a process flow for analyzinghistorical events to calculate impact of multi-system event impact and,in response, allocate resources, in accordance with embodiments of thepresent invention;

FIG. 3 provides a flow diagram illustrating a process flow for analyzinghistorical events to calculate impact of multi-system event impact and,in response, allocate resources, in accordance with embodiments of thepresent invention;

FIG. 4 provides a flow diagram illustrating a process flow for analyzinghistorical events to calculate impact of multi-system event impact and,in response, allocate resources, in accordance with embodiments of thepresent invention;

FIG. 5 provides a screenshot of an administrator interface enabled byembodiments of the invention; and

FIG. 6 provides a screenshot of an administrator interface enabled byembodiments of the invention.

DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION

Embodiments of the invention provide for analyzing historical events tocalculate the impact of multi-system events and, in response, allocateresources. Embodiments determine a multi-system event is occurring basedon historical multi-system event data; correlate the multi-system eventwith one or more predicted resource allocation results of themulti-system event based on historical multi-system event data; and inresponse to the correlation, initiate mitigation of the one or morepredicted resource allocation results, including re-allocation of atleast one affected resource to a new system. Some also determine currentconsumption of a resource utilized by a service; determine currentprocessing throughput; calculate a relationship between consumption ofthe resource and processing throughput; determine the service isimpacted by the multi-system event; calculate expected processingthroughput in response to the multi-system event; and calculate expectedconsumption of the resource based on the calculated expected processingthroughput and the calculated relationship. And some also initiatere-allocation of resources to account for the calculated expectedconsumption of the resource.

In some applications, embodiments of the invention may be implemented aspart of an entity's resolution planning, or in other words, planning ofthe possibility that an entity is split by way of merger, acquisition orgovernment mandate. In such situations, there may be a single system ofprocessing, memory, virtual and other electronic resources that mustalso be split into multiple components and retain functionality. In somesituations such a system includes multiple sub-systems, which may bereferred to herein collectively as a multi-system. In some suchsituations, the multi-system shares processing and/or memory resourcesand these resources must be re-allocated given a multi-system event,such as a “split” of entity programming such as among distinct lines ofbusiness (without split of the entity itself) or in some cases, thesplit or merger of the entity itself. Embodiments of the inventioneffectively provide for solutions to such situations. In someembodiments, the resources also include human capital or othernon-electronic resources and predicting attrition or hiring may beincorporated into the system.

Because of the historical manual process for predicting resourceallocation provided occurrence of certain events, the ability todetermine service impacts and gather insight for recovery andresolution/mitigation at the time of a service-disrupting event ishistorically prohibitive. Such manual processes were prone to error andnon-repeatable. Outputs to the process were typically in anon-structured data format such as a PDF with verbose explanationsmaking consumption difficult. As discussed above, embodiments of theinvention provide an event impact calculator that produces calculationsfor business continuity of services under stress in areas such aselectronic resources, staffing, costs, real estate and other consumedresources.

In various embodiments, inputs to the calculator include the impactedservice(s), current consumption of resources, current throughputs,expected throughputs and impacts to technology volumes, staffingattrition, customer attrition, business requirements and the like.Embodiments of the invention produce an event impacts report withnumerical resource impact information, as well as plans and playbooksfor mitigation/resolution. Examples of event impact reports are providedin FIGS. 5 and 6. Embodiments of the invention enable the ability tocalculate resource impacts and requirements to continue to provideservice(s) that are fit-for-purpose at the time of a disruption. Thesystem also has the ability to assemble data quickly into aneasy-to-consume output. Embodiments of the invention are particularlyapplicable in situations where a multi-system or single system isfragmented or severed and/or where an entity is fragmented or severed.

Such non-traditional concepts provide a technical improvement overexisting technology in the data gathering, analysis and problemmitigation fields of art by enabling, in certain embodiments of theinvention, a spoke and hub environment whereby spoke systems and theirconnections with a hub system provide for intelligent collection ofdata, such as historical resource utilization data. For example,resource data may come from a variety of disparate sources, servers,systems and the like. In various embodiments, multiple channels or onlyone channel is used for data moving from its source to its destinationat a “hub” that collects, and in some cases, analyzes the data. In somecases, only those channels with relevant information are used. This maybe determined based on user input or based on communications from spokecontrol systems such as a business group's server sending instructionsto the hub system to configure and/or activate a communication channelwith a spoke system so that relevant information may be communicatedacross the channel. In some cases, when the spoke control system detectsthat new information or otherwise relevant information may be availableat one or more spoke systems, the spoke control system sends controlsignals that cause the hub system to establish a dedicated communicationchannel between the hub system and the one or more spoke systems thatmay have relevant information. In some cases, the dedicatedcommunication channel is optimized so that the information may becommunicated more efficiently than it could be over a non-dedicatedcommunication channel. For example, a non-dedicated communicationchannel may utilize insecure network connections or systems or mayutilize unstable or noise-prone network connections or systems. Thus,when establishing a dedicated communication channel, the hub system mayoptimize parameters of the dedicated communication channel such that thecommunication channel is less prone to interruption from securitybreach, other traffic, offline systems or the like. This may be done by,for example, designating certain systems on the network between the hubsystem and the various spoke systems, respectively, as low-functioning,medium-functioning, or high-functioning networksystems/hubs/connections/channels (collectively referred to as networksystems). In various other embodiments, the number of categories ofsystems may be raised or lowered. For example, there may be five (5)distinct categories of systems. The various network systems may becategorized by one or more administrators and/or automatically based onone or more monitoring modules or applications running on the hub and/orspoke systems. Such a monitoring system may flag any abnormalities innetwork communication such as an unintended offline network system, asecurity breach of a network system, a network communication affectednegatively by noise or interference (in some cases based on apredetermined threshold of interference or communication errors). Thus,once various network systems are categorized, the spoke control systemsand/or the hub system may optimize the dedicated communication channelby selecting appropriately categorized network systems for thecommunication channel. For example, the hub system may establish adedicated communication channel in order to receive informationassociated with high priority work (as indicated by a spoke controlsystem, for example, in its control signals to the hub system). Whenestablishing the dedicated communication channel, the hub system mayonly select high-functioning network systems in order to ensure that thehigh priority information may be reliably communicated from the spokesystem(s) to the hub system. In another example, certain spoke systemsare designated or categorized and always provided a dedicated (ornon-dedicated) communication channel based on their respectivecategorization.

Embodiments of the present invention will now be described more fullyhereinafter with reference to the accompanying drawings, in which some,but not all, embodiments of the invention are shown. Indeed, theinvention may be embodied in many different forms and should not beconstrued as limited to the embodiments set forth herein; rather, theseembodiments are provided so that this disclosure will satisfy applicablelegal requirements. Where possible, any terms expressed in the singularform herein are meant to also include the plural form and vice versa,unless explicitly stated otherwise. Also, as used herein, the term “a”and/or “an” shall mean “one or more,” even though the phrase “one ormore” is also used herein. Furthermore, when it is said herein thatsomething is “based on” something else, it may be based on one or moreother things as well. In other words, unless expressly indicatedotherwise, as used herein “based on” means “based at least in part on”or “based at least partially on.” Like numbers refer to like elementsthroughout.

Various embodiments or features will be presented in terms of systemsthat may include a number of devices, components, modules, and the like.It is to be understood and appreciated that the various systems mayinclude additional devices, components, modules, etc. and/or may notinclude all of the devices, components, modules etc. discussed inconnection with the figures. A combination of these approaches may alsobe used.

Embodiments of the present invention are described below with referenceto flowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products. It may be understood that eachblock of the flowchart illustrations and/or block diagrams, and/orcombinations of blocks in the flowchart illustrations and/or blockdiagrams, can be implemented by computer program instructions. Thesecomputer program instructions may be provided to a processor of ageneral purpose computer, special purpose computer, or otherprogrammable data processing apparatus to produce a machine, such thatthe instructions, which execute via the processor of the computer orother programmable data processing apparatus, create mechanisms forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

These computer program instructions may also be stored in acomputer-readable memory that can direct a computer or otherprogrammable data processing apparatus to function in a particularmanner, such that the instructions stored in the computer readablememory produce an article of manufacture including instruction meanswhich implement the function/act specified in the flowchart and/or blockdiagram block(s).

The computer program instructions may also be loaded onto a computer orother programmable data processing apparatus to cause a series ofoperational steps to be performed on the computer or other programmableapparatus to produce a computer-implemented process such that theinstructions which execute on the computer or other programmableapparatus provide steps for implementing the functions/acts specified inthe flowchart and/or block diagram block(s). Alternatively, computerprogram implemented steps or acts may be combined with operator or humanimplemented steps or acts in order to carry out an embodiment of theinvention.

Referring now to FIG. 1, the figure illustrates a processing systemenvironment 100, in accordance with some embodiments of the invention.The environment 100 includes a user device 111 associated or used withauthorization of a user 110 (e.g., a system administrator, entityadministrator or the like), a third party system 160, and an entitysystem 140. In some embodiments, the third party system 160 correspondsto a third party entity. The environment 100 further includes one ormore third party systems 192 (e.g., a partner, agent, or contractorassociated with an entity), one or more other entity managing systems194 (e.g., a third party system configured to provide instructions toentity systems, etc.), and one or more other external systems 196.

The systems and devices communicate with one another over the network130 and perform one or more of the various steps and/or methodsaccording to embodiments of the disclosure discussed herein. The network130 may include a local area network (LAN), a wide area network (WAN),and/or a global area network (GAN). The network 130 may provide forwireline, wireless, or a combination of wireline and wirelesscommunication between devices in the network. In one embodiment, thenetwork 130 includes the Internet.

The user device 111, the third party system 160, and the entity system140 each includes a computer system, server, multiple computer systemsand/or servers or the like. The entity managing system 140, in theembodiments shown has a communication device 142 communicably coupledwith a processing device 144, which is also communicably coupled with amemory device 146. The processing device 144 is configured to controlthe communication device 142 such that the entity system 140communicates across the network 130 with one or more other systems. Theprocessing device 144 is also configured to access the memory device 146in order to read the computer readable instructions 148, which in someembodiments includes one or more applications such as applications 150and 151. The memory device 146 also includes a datastore 154 or databasefor storing pieces of data that can be accessed by the processing device144.

As used herein, a “processing device,” generally refers to a device orcombination of devices having circuitry used for implementing thecommunication and/or logic functions of a particular system. Forexample, a processing device may include a digital signal processordevice, a microprocessor device, and various analog-to-digitalconverters, digital-to-analog converters, and other support circuitsand/or combinations of the foregoing. Control and signal processingfunctions of the system are allocated between these processing devicesaccording to their respective capabilities. The processing device 114,144, or 164 may further include functionality to operate one or moresoftware programs based on computer-executable program code thereof,which may be stored in a memory. As the phrase is used herein, aprocessing device 114, 144, or 164 may be “configured to” perform acertain function in a variety of ways, including, for example, by havingone or more general-purpose circuits perform the function by executingparticular computer-executable program code embodied incomputer-readable medium, and/or by having one or moreapplication-specific circuits perform the function.

Furthermore, as used herein, a “memory device” generally refers to adevice or combination of devices that store one or more forms ofcomputer-readable media and/or computer-executable programcode/instructions. Computer-readable media is defined in greater detailbelow. For example, in one embodiment, the memory device 146 includesany computer memory that provides an actual or virtual space totemporarily or permanently store data and/or commands provided to theprocessing device 144 when it carries out its functions describedherein.

The user device 111 includes a communication device 112 communicablycoupled with a processing device 114, which is also communicably coupledwith a memory device 116. The processing device 114 is configured tocontrol the communication device 112 such that the user device 111communicates across the network 130 with one or more other systems. Theprocessing device 114 is also configured to access the memory device 116in order to read the computer readable instructions 118, which in someembodiments includes application 120 and online entity application 121.The memory device 116 also includes a datastore 122 or database forstoring pieces of data that can be accessed by the processing device114. The user device 111 may be a mobile device of the user 110, orother computing device.

The third party system 160 includes a communication device 162communicably coupled with a processing device 164, which is alsocommunicably coupled with a memory device 166. The processing device 164is configured to control the communication device 162 such that thethird party system 160 communicates across the network 130 with one ormore other systems. The processing device 164 is also configured toaccess the memory device 166 in order to read the computer readableinstructions 168, which in some embodiments includes an application 170.The memory device 166 also includes a datastore 172 or database forstoring pieces of data that can be accessed by the processing device164.

In some embodiments, the application 120, the entity application 121,and the application 170 interact with the application 150 or 151 toreceive or provide historical resource data, analyze the historicalresource data, and implement processes as discussed herein. Theapplications 150 and 151 may be a suite of applications for performingthese functions.

In some embodiments, the application 120, the entity application 121,and the application 170 interact with the applications 150 and 151 toutilize metadata to determine decisions for processing.

The applications 120, 121, 150, 151, and 170 are for instructing theprocessing devices 114, 144 and 164 to perform various steps of themethods discussed herein, and/or other steps and/or similar steps. Invarious embodiments, one or more of the applications 120, 121, 150, 151,and 170 are included in the computer readable instructions stored in amemory device of one or more systems or devices other than the systems160 and 140 and the user device 111. For example, in some embodiments,the application 120 is stored and configured for being accessed by aprocessing device of one or more third party systems 192 connected tothe network 130. In various embodiments, the applications 120, 121, 150,151, and 170 stored and executed by different systems/devices aredifferent. In some embodiments, the applications 120, 121, 150, 151, and170 stored and executed by different systems may be similar and may beconfigured to communicate with one another, and in some embodiments, theapplications 120, 121, 150, 151, and 170 may be considered to be workingtogether as a singular application despite being stored and executed ondifferent systems.

In various embodiments, one of the systems discussed above, such as theentity system 140, is more than one system and the various components ofthe system are not collocated, and in various embodiments, there aremultiple components performing the functions indicated herein as asingle device. For example, in one embodiment, multiple processingdevices perform the functions of the processing device 144 of the entitymanaging system 140 described herein. In various embodiments, the entitysystem 140 includes one or more of the external systems 196 and/or anyother system or component used in conjunction with or to perform any ofthe method steps discussed herein. For example, the entity system 140may include a hub system in operative connection with a number ofsub-systems, which may be referred to herein as a multi-system.

In various embodiments, the entity system 140, the third party system160, and the user device 111 and/or other systems may perform all orpart of a one or more method steps discussed above and/or other methodsteps in association with the method steps discussed above. Furthermore,some or all the systems/devices discussed here, in association withother systems or without association with other systems, in associationwith steps being performed manually or without steps being performedmanually, may perform one or more of the steps of one or more of themethod discussed herein, or other methods, processes or steps discussedherein or not discussed herein.

Referring now to FIG. 2, a flowchart illustrates a method 200 foranalyzing historical events to calculate impact of multi-system eventimpact and, in response, allocate resources. The first step, asrepresented by block 210, is for the system to determine a multi-systemevent is occurring based on historical multi-system event data. The nextstep, as represented by block 220, is to correlate the multi-systemevent with one or more predicted resource allocation results of themulti-system event based on historical multi-system event data. The nextstep, as represented by block 230, is for the system to initiate, inresponse to the correlation, mitigation of the one or more predictedresource allocation results. This may, in some embodiments, includere-allocation of at least one affected resource to a new system.

Referring now to FIG. 3, a flowchart illustrates a method 300 includingadditional steps for analyzing historical events to calculate impact ofmulti-system event impact and, in response, allocate resources accordingto embodiments of the invention. The first step, as illustrated by block310, is to determine current consumption of a resource utilized by aservice. The next step, as represented by block 320, is to determinecurrent processing throughput. The next step, as represented by block330, is to calculate a relationship between consumption of the resourceand processing throughput. The next step, as represented by block 340,is to determine the service is impacted by the multi-system event. Thenext step, as represented by block 350, is to calculate expectedprocessing throughput in response to the multi-system event. The nextstep, as represented by block 360, is to calculate expected consumptionof the resource based on the calculated expected processing throughputand the calculated relationship.

Referring now to FIG. 4, a flowchart illustrates a method 400 includingadditional and/or alternative steps for analyzing historical events tocalculate impact of multi-system event impact and, in response, allocateresources. The first step, as represented by block 410, is to initiatepresentation of the calculated expected consumption of the resources toan administrator. The next step, as represented by block 420, is tocalculate a re-allocation of resources to account for the calculatedexpected consumption of the resource. The next step, as represented byblock 430, is to initiate presentation of the calculated re-allocationof resources for administration approval. The next step, as representedby block 440, is to receive administrator approval for implementing there-allocation of resources. Finally, the next step, as represented byblock 450, is to initiate, in response, re-allocation of resources.

Referring now to FIGS. 5 and 6, screenshots 500 and 600 of the eventcalculator administrator interface are shown. Screenshot 500 illustratesrecital of information related to the relevant service, the servicelevel agreements (SLAs), key performance indicators (KPIs), theresources required for the service, such as dedicated and shared people,apps, technology instances, contracts/vendors, real estate, andregulation resources. There is a calculation for consumption of theresources as well as cost. Notably, an Impact at Intervals graph is anillustration of the level of impact to a particular resource over timeprovided the occurrence of the event or disruption. Screenshot 600illustrates an administrator response resource report for a particularservice. The threats that are applicable to the service, response teams,SLA, and KPI maximum impact are shown. For a particular resource, agraph illustrates the impact of a particular event or disruption to theservice over time and provides a weekly plan showing current resourcelevel, expected attrition, amount of the resource required to maintainthroughput and the calculated variance. This variance may be considereda gap requiring mitigation or resolution, for example, automaticre-allocation of resources from other services or systems.

In various embodiments, the calculator implements a smart contract.Smart contracts are computer processes that facilitate, verify and/orenforce negotiation and/or performance of a contract between parties.One fundamental purpose of smart contracts is to integrate the practiceof contract law and related business practices with electronic commerceprotocols between people on the Internet. Smart contracts may leverage auser interface that provides one or more parties or administratorsaccess, which may be restricted at varying levels for different people,to the terms and logic of the contract. Smart contracts typicallyinclude logic that emulates contractual clauses that are partially orfully self-executing and/or self-enforcing. Examples of smart contractsare digital rights management (DRM) used for protecting copyrightedworks, financial cryptography schemes for financial contracts, admissioncontrol schemes, token bucket algorithms, other quality of servicemechanisms for assistance in facilitating network service levelagreements, person-to-person network mechanisms for ensuring faircontributions of users, and others. The smart contract may map back tothe intervals, automate the logic of an agreement, implement allocationfor services and/or reverse allocation for services, increase ordecrease services being provided in response to events/disruptions andthe like. In some embodiments, feedback from the smart contract mayenable measurement of the entity's ability to respond in certainsituations.

In some embodiments, the correlation algorithm is configured todetermine whether circumstances corresponding to the collected data arelikely to cause the potential issue, thereby resulting in at least onelikelihood of causation. A “likelihood of causation” may correspond toonly one nexus as well as a collected-data-potential-issue pair.Furthermore, the correlation algorithm may be configured to determine alevel of causation. The “level of causation” may correspond to acombination of all of the nexuses and all collected-data-potential-issuepairs. Thus, in some embodiments, the level of causation may be asummation or variation on a summation of each of the likelihoods ofcausation. For example, if a collected-data-potential-issue pair hasmultiple potential nexuses with the potential issue, then each of themultiple nexuses will have a corresponding likelihood of causation,which may be combined (e.g., summed) to determine the overall level ofcausation of the collected-data-potential-issue pair. Thus, each pairmay be compared and ranked. Then, the system may determinedrecommendations to mitigate the highest ranked pair. For example, if thecollected data indicates a trend of resource utilization by a particularservice and the level of causation is high for that resource utilizationbeing caused by an increase in throughput, then the system may developrecommendations configured for mitigating the impact of a multi-systemevent or disruption given the correlation. For example, the system mayrecommend that additional resources are allocated when a disruptionevent is detected. In some instances, the mitigation may beautomatically carried out if possible, such as automaticallyre-allocating resources when a correlated event or disruption isdetected or predicted.

Each communication interface described herein, including thecommunication devices 142, 112 and 162, generally includes hardware,and, in some instances, software, that enables a portion of the system100, such as the processor 144 to transport, send, receive, and/orotherwise communicate information. For example, the communicationinterface 112 of the user device 111 may include a modem, server,electrical connection, and/or other electronic device that operativelyconnects the user device 111 to another electronic device, such as theelectronic devices that make up the entity system 140.

Each processor described herein, including the processor 144, 114 and164, generally includes circuitry for implementing the audio, visual,and/or logic functions of that portion of the system 100. For example,the processor may include a digital signal processor device, amicroprocessor device, and various analog-to-digital converters,digital-to-analog converters, and other support circuits. Control andsignal processing functions of the system in which the processor residesmay be allocated between these devices according to their respectivecapabilities. The processor may also include functionality to operateone or more software programs based at least partially oncomputer-executable program code portions thereof, which may be stored,for example, in a memory device, such as the memory 146, 116 and 166.

Each memory device described herein, including the memory 146, 116 and166 for storing applications and data, may include any computer-readablemedium. For example, memory may include volatile memory, such asvolatile random access memory (RAM) having a cache area for thetemporary storage of data. Memory may also include non-volatile memory,which may be embedded and/or may be removable. The non-volatile memorymay additionally or alternatively include an EEPROM, flash memory,and/or the like. The memory may store any one or more of pieces ofinformation and data used by the system in which it resides to implementthe functions of that system.

It will be understood that the embodiment illustrated in FIG. 1 isexemplary and that other embodiments may vary. For example, in someembodiments, some of the portions of the system 100 may be combined intosingle portion. Specifically, in some embodiments, the entity system 140is configured to perform some of the same functions of those separateportions as described and/or contemplated herein. Likewise, in someembodiments, some or all of the portions of the entity system 140 may beseparated into two or more distinct portions.

In some embodiments, the system may allow the administrator to providepreferences for different scenarios of resource allocation or in certaindisruptions. For example, the system may enable the administrator tospecify that the administrator prefers the cheapest option, the fastestoption, the best balance between the cheapest and fastest option orotherwise. In some cases, the system enables the administrator toestablish these preferences before occurrence of an event or disruptionand in some cases, the system enables the administrator to provide thesepreferences “on-the-fly” or during operation of the system.

In various embodiments, the potential issue, rather than a problem, isan opportunity. For example, the system may recognize that a particularevent increases throughput for a particular service and such increaserequires resource re-allocation. Such re-allocation may includeallocation of additional resources to the service to account for theincrease in service.

In various embodiments, not only virtual resources, but human resourcesmay be shared. Thus, the allocation and re-allocation of resources mayinclude allocation and re-allocation of shared human resources. Invarious embodiments, the system receives feedback from the output(s) ofthe system including whether the resources re-allocated were sufficientfor the expected throughput given the service(s) being provided. Forexample, in a case where too few of a particular resource werere-allocated given a predicted need, then in a future operation of thesystem, the system may provide for re-allocation of resources. Such anincrease may be based on an actual known amount of additional resourcesneeded (or average amount of additional resources needed) or may bebased on a predetermined threshold amount such as 5% or 10% over theamount re-allocated previously. In some cases, it may be based on anactual or average number of additional needed plus a predeterminedbuffer amount or percentage. Similarly, if too many resources werere-allocated based on a particular predicted situation, then feedback tothe system may indicate that fewer resources should be allocated infuture similar situations. For example, in some situations, the systemmay decrease the number of resources re-allocated in similar futuresituations by an actual amount of extra resources in a previoussituation (or average amount of extra resources in previous situations)or may be based on a predetermined threshold amount such as 5% or 10%under the amount re-allocated previously. In some cases, it may be basedon an actual or average number of fewer needed plus a predeterminedbuffer amount or percentage.

As will be appreciated by one of skill in the art, the present inventionmay be embodied as a method (including, for example, acomputer-implemented process, a business process, and/or any otherprocess), apparatus (including, for example, a system, machine, device,computer program product, and/or the like), or a combination of theforegoing. Accordingly, embodiments of the present invention may takethe form of an entirely hardware embodiment, an entirely softwareembodiment (including firmware, resident software, micro-code, etc.), oran embodiment combining software and hardware aspects that may generallybe referred to herein as a “system.” For example, various embodimentsmay take the form of web-implemented computer software. Furthermore,embodiments of the present invention may take the form of a computerprogram product on a computer-readable medium having computer-executableprogram code embodied in the medium.

It will be understood that any suitable computer-readable medium may beutilized. The computer-readable medium may include, but is not limitedto, a non-transitory computer-readable medium, such as a tangibleelectronic, magnetic, optical, electromagnetic, infrared, and/orsemiconductor system, device, and/or other apparatus. For example, insome embodiments, the non-transitory computer-readable medium includes atangible medium such as a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), a compact discread-only memory (CD-ROM), and/or some other tangible optical and/ormagnetic storage device. In other embodiments of the present invention,however, the computer-readable medium may be transitory, such as, forexample, a propagation signal including computer-executable program codeportions embodied therein.

One or more computer-executable program code portions for carrying outoperations of the present invention may include object-oriented,scripted, and/or unscripted programming languages, such as, for example,Java, Perl, Smalltalk, C++, SAS, SQL, Python, Objective C, and/or thelike. In some embodiments, the one or more computer-executable programcode portions for carrying out operations of embodiments of the presentinvention are written in conventional procedural programming languages,such as the “C” programming languages and/or similar programminglanguages. The computer program code may alternatively or additionallybe written in one or more multi-paradigm programming languages, such as,for example, F#.

As used herein, a processor/computer, which may include one or moreprocessors/computers, may be “configured to” perform a stated functionin a variety of ways, including, for example, by having one or moregeneral-purpose circuits perform the stated function by executing one ormore computer-executable program code portions embodied in acomputer-readable medium, and/or by having one or moreapplication-specific circuits perform the stated function.

While certain exemplary embodiments have been described and shown in theaccompanying drawings, it is to be understood that such embodiments aremerely illustrative of, and not restrictive of, the broad invention, andthat this invention not be limited to the specific constructions andarrangements shown and described, since various other changes,combinations, omissions, modifications and substitutions, in addition tothose set forth in the above paragraphs, are possible. Those skilled inthe art will appreciate that various adaptations and modifications ofthe just described embodiments can be configured without departing fromthe scope and spirit of the invention. Therefore, it is to be understoodthat, within the scope of the appended claims, the invention may bepracticed other than as specifically described herein.

What is claimed is:
 1. A system for analyzing historical events tocalculate impact of multi-system event impact and, in response, allocateresources, the system comprising: a computer apparatus including aprocessor, a memory device, and a communication device; and a softwaremodule stored in the memory, comprising computer-readable instructionsthat when executed by the processor cause the processor to: determine amulti-system event is occurring based on historical multi-system eventdata; retrieve resource data from one or more disparate source systemsby: designating each of the one or more source systems as lowfunctioning, medium functioning or high functioning based onapplications running on the one or more source systems; detectingpresence of new information at a source system of the one or more sourcesystems; and establishing a dedicated communication channel between ahub system and the source system based on receiving control signals froma control system, wherein establishing the dedicated communicationchannel comprises determining that the control signals are associatedwith a predetermined high priority and that the source system is a highfunctioning system based on relevance of the new information at thesource system with the multi-system event; wherein the retrievedresource data comprises the historical multi-system event data, whereinthe multi-system event is associated with disruption of a service;determine one or more predicted resource allocation results of themulti-system event based on historical multi-system event data, whereinthe one or more predicted resource allocation results comprise a currentresource level of a resource, determined expected attrition of theresource due to the multi-system event, a determined amount of resourcerequired to maintain processing throughput, and determined variance gapbetween the current resource level and the determined amount of resourcerequired; and in response to identifying that the variance gap requiresmitigation of the one or more predicted resource allocation results,initiate mitigation of the one or more predicted resource allocationresults-by allocating additional resources from a new system; determinethat an amount of the additional resources is greater than thedetermined required amount of the resource by more than a predeterminedthreshold amount, wherein the determined required amount of the resourcecomprises a sum of an average consumption of the resource and a bufferamount; decrease the amount of the additional resources and providefeedback to the source system for future occurrences of multi-systemevents.
 2. The system of claim 1, wherein determining the one or morepredicted resource allocation results further comprises: determiningcurrent consumption of the resource utilized by the service; determiningcurrent processing throughput of the resource; calculating arelationship between consumption of the resource and processingthroughput; determining that the service is impacted by the multi-systemevent; calculating expected processing throughput in response to themulti-system event; and determining the expected attrition of theresource due to the multi-system event by calculating expectedconsumption of the resource based on the calculated expected processingthroughput and the calculated relationship.
 3. The system of claim 2,wherein the computer-readable instructions when executed by theprocessor further cause the processor to: initiate re-allocation ofresources to account for the calculated expected consumption of theresource.
 4. The system of claim 2, wherein the computer-readableinstructions when executed by the processor further cause the processorto: initiate presentation of the calculated expected consumption of theresource to an administrator; and receive instructions from theadministrator regarding desired mitigation.
 5. The system of claim 1,wherein the computer-readable instructions when executed by theprocessor further cause the processor to: determine that an amount ofthe additional resources is greater than a required amount of theresource by more than a predetermined threshold amount, wherein therequired amount of the resource comprises a sum of an averageconsumption of the resource and a buffer amount; and decrease the amountof the additional resources.
 6. The system of claim 1, whereindesignating each of the one or more source systems further comprises:flagging one or more abnormalities associated with network communicationof the source system, the one or more abnormalities comprising anunintended offline source system, a security breach of the sourcesystem, and/or network communication having noise above a predeterminedthreshold of interference, wherein establishing the dedicatedcommunication channel further comprises: optimizing networkcommunication parameters of the dedicated communication channel suchthat the dedicated communication channel is structured for reducinginterruption from a security breach, traffic noise or offline systems.7. The system of claim 1, wherein the additional resources comprise anelectronic processing resource or an electronic memory resource.
 8. Acomputer program product for analyzing historical events to calculateimpact of multi-system event impact and, in response, allocateresources, the computer program product comprising at least onenon-transitory computer-readable medium having computer-readable programcode portions embodied therein, the computer-readable program codeportions comprising: an executable portion configured to determine amulti-system event is occurring based on comparing with historicalmulti-system event data; an executable portion configured to retrieveresource data from one or more disparate source systems by: designatingeach of the one or more source systems as low functioning, mediumfunctioning or high functioning based on applications running on the oneor more source systems; detecting presence of new information at asource system of the one or more source systems; and establishing adedicated communication channel between a hub system and the sourcesystem based on receiving control signals from a control system, whereinestablishing the dedicated communication channel comprises determiningthat the control signals are associated with a predetermined highpriority and that the source system is a high functioning system basedon relevance of the new information at the source system with themulti-system event; an executable portion configured to wherein theretrieved resource data comprises the historical multi-system eventdata, wherein the multi-system event is associated with disruption of aservice; an executable portion configured to determine one or morepredicted resource allocation results of the multi-system event based onhistorical multi-system event data, wherein the one or more predictedresource allocation results comprise a current resource level of aresource, determined expected attrition of the resource due to themulti-system event, a determined amount of resource required to maintainprocessing throughput, and determined variance gap between the currentresource level and the determined amount of resource required; and anexecutable portion configured to, in response to identifying that thevariance gap requires mitigation of the one or more predicted resourceallocation results, initiate mitigation of the one or more predictedresource allocation results by allocating additional resources from anew system; an executable portion configured to determine that an amountof the additional resources is greater than the determined requiredamount of the resource by more than a predetermined threshold amount,wherein the determined required amount of the resource comprises a sumof an average consumption of the resource and a buffer amount; anexecutable portion configured to decrease the amount of the additionalresources and provide feedback to the source system for futureoccurrences of multi-system events.
 9. The computer program product ofclaim 8, wherein determining the one or more predicted resourceallocation results further comprises: determining current consumption ofthe resource utilized by the service; determining current processingthroughput of the resource; calculating a relationship betweenconsumption of the resource and processing throughput; determining thatthe service is impacted by the multi-system event; calculating expectedprocessing throughput in response to the multi-system event; anddetermining the expected attrition of the resource due to themulti-system event by calculating expected consumption of the resourcebased on the calculated expected processing throughput and thecalculated relationship.
 10. The computer program product of claim 9,wherein the computer-readable program code portions further comprise: anexecutable portion configured to initiate re-allocation of resources toaccount for the calculated expected consumption of the resource.
 11. Thecomputer program product of claim 9, wherein the computer-readableprogram code portions further comprise: an executable portion configuredto initiate presentation of the calculated expected consumption of theresource to an administrator; and an executable portion configured toreceive instructions from the administrator regarding desiredmitigation.
 12. The computer program product of claim 8, wherein thecomputer-readable program code portions further comprise: an executableportion configured to determine that an amount of the additionalresources is greater than a required amount of the resource by more thana predetermined threshold amount, wherein the required amount of theresource comprises a sum of an average consumption of the resource and abuffer amount; and an executable portion configured to decrease theamount of the additional resources.
 13. The computer program product ofclaim 8, wherein designating each of the one or more source systemsfurther comprises: flagging one or more abnormalities associated withnetwork communication of the source system, the one or moreabnormalities comprising an unintended offline source system, a securitybreach of the source system, and/or network communication having noiseabove a predetermined threshold of interference, wherein establishingthe dedicated communication channel further comprises: optimizingnetwork communication parameters of the dedicated communication channelsuch that the dedicated communication channel is structured for reducinginterruption from a security breach, traffic noise or offline systems.14. The computer program product of claim 8, wherein the allocatedadditional resources comprise an electronic processing resource or anelectronic memory resource.
 15. A method for analyzing historical eventsto calculate impact of multi-system event impact and, in response,allocate resources, the method comprising: determining, using theprocessing device, a multi-system event is occurring based on comparingwith historical multi-system event data; retrieving, using a processingdevice, resource data from one or more disparate source systems by:designating each of the one or more source systems as low functioning,medium functioning or high functioning based on applications running onthe one or more source systems; detecting presence of new information ata source system of the one or more source systems; and establishing adedicated communication channel between a hub system and the sourcesystem based on receiving control signals from a control system, whereinestablishing the dedicated communication channel comprises determiningthat the control signals are associated with a predetermined highpriority and that the source system is a high functioning system basedon relevance of the new information at the source system with themulti-system event; wherein the retrieved resource data comprises thehistorical multi-system event data, wherein the multi-system event isassociated with disruption of a service; determining, using theprocessing device, one or more predicted resource allocation results ofthe multi-system event based on historical multi-system event data,wherein the one or more predicted resource allocation results comprise acurrent resource level of a resource, determined expected attrition ofthe resource due to the multi-system event, a determined amount ofresource required to maintain processing throughput, and determinedvariance gap between the current resource level and the determinedamount of resource required; and in response to identifying that thevariance gap requires mitigation of the one or more predicted resourceallocation results, initiating, using the processing device, mitigationof the one or more predicted resource allocation results by allocatingadditional resources from a new system determine that an amount of theadditional resources is greater than the determined required amount ofthe resource by more than a predetermined threshold amount, wherein thedetermined required amount of the resource comprises a sum of an averageconsumption of the resource and a buffer amount; decrease the amount ofthe additional resources and provide feedback to the source system forfuture occurrences of multi-system events.
 16. The method of claim 15,wherein determining the one or more predicted resource allocationresults further comprises: determining, using the processing device,current consumption of the resource utilized by the service;determining, using the processing device, current processing throughputof the resource; calculating, using the processing device, arelationship between consumption of the resource and processingthroughput; determining, using the processing device, that the serviceis impacted by the multi-system event; calculating, using the processingdevice, expected processing throughput in response to the multi-systemevent; and determining the expected attrition of the resource due to themulti-system event by calculating, using the processing device, expectedconsumption of the resource based on the calculated expected processingthroughput and the calculated relationship.
 17. The method of claim 16,further comprising: initiating, using the processing device,re-allocation of resources to account for the calculated expectedconsumption of the resource.
 18. The method of claim 16, furthercomprising: initiating, using the processing device, presentation of thecalculated expected consumption of the resource to an administrator; andreceiving, using the processing device, instructions from theadministrator regarding desired mitigation.
 19. The method of claim 15,further comprising: determining, using the processing device, that anamount of the additional resources is greater than a required amount ofthe resource by more than a predetermined threshold amount, wherein therequired amount of the resource comprises a sum of an averageconsumption of the resource and a buffer amount; and decreasing, usingthe processing device, the amount of the additional resources.
 20. Themethod of claim 15, wherein designating each of the one or more sourcesystems further comprises flagging one or more abnormalities associatedwith network communication of the source system, the one or moreabnormalities comprising an unintended offline source system, a securitybreach of the source system, and/or network communication having noiseabove a predetermined threshold of interference; and whereinestablishing the dedicated communication channel further comprisesoptimizing network communication parameters of the dedicatedcommunication channel such that the dedicated communication channel isstructured for reducing interruption from a security breach, trafficnoise or offline systems.